깃의 3개의 공간1) 디렉터리 -> 버전 관리의 대상이 위치하는 공간(.git이 있는 것)2) 스테이지 -> 모든 변경 사항을 버전으로 만들 필요는 없기때문에 다음 버전이 될 후보가 올라가는 공간3) 저장소 -> 버전이 만들어지고 관리되는 공간모든 시작은 Window는
어제까지의 진행 상황👉 각 회원에 맞는 사진과 이름, 간단한 소개를 Card형식으로 띄웠다.오늘 해야할 것1) 회원 Card를 클릭 했을 때 상세정보를 보여준다.2) 회원 별 창에서 댓글을 남길 수 있게 한다.3) 회원 마다 남긴 댓글을 볼 수 있게 한다.4) 모든
어제까지의 진행 상황👉 각 회원들의 정보들을 알맞게 띄우고 방명록을 저장하여 띄워줬다.오늘 해야할 것1) 회원별 카드 클릭 시 정보를 보여주는 곳에서 디자인의 수정이 필요.2) 회원별 카드 클릭 시 정보를 보여주는 부분의 구조를 center정렬하자.3) 댓글에 삭제
어제까지의 진행 상황👉 계획했던 모든 기능들은 구현이 됐다.오늘 해야할 것( 오늘은 코드 구현이나 공부를 하지 못했다... ) 1) 만든 프로젝트를 바탕으로 발표자료 만들 것.2) 발표 대본 만들 것.3) 시현영상 준비.최종 코드 ( index.html )app.py
어제까지의 진행 상황👉 계획했던 모든 기능들은 구현이 됐지만 뭔가 디자인 적 요소가 부족.오늘 해야할 것1) 만든 프로젝트와 ppt로 팀원들의 기가 죽지 않도록 발표를 잘할 것!!2) 할 것은 아니지만 ... 개인적으로 페이지에 재미요소를 추가했다.3) 수정 기능도
1) 3 , 5 , 6 , 1 , 2 , 4 에서 가장 큰 값 찾기👉 여기서 else문의 들여쓰기 위치가 정말 중요했다.👉 else문만 1시간 들여다 봤다... 기존 상식의 else문이 아님..!!!👉 for else 문이라고 for문 안에 내용이 break
for문에서 enumerate주민번호 홀수 = 남자 , 짝수 = 여자 판별 예제시간 복잡도👉 입력값과 문제를 해결하는 데 걸리는 시간과의 상관관계👉 각 줄이 실행되는 것을 1번이라고 생각예시로 계산하는 시간 복잡도👉 Array의 길이 + Array의 길이 + 비
튜플 👉 list의 자료형과 비슷하지만 불변형 성질!👉 데이터 추가, 수정이 안된다!!집합👉 중복이 제거 된 리스트형태f - String👉 스트링 형태로 변수와 말을 이어줄 때 +로 다 이어줄 필요 X예외처리👉 try구문 남용시 오류찾기 힘들고 프로그램 자체의
문자열 뒤집기 최소 값 구하기👉 ex) input = "011110" 👉 모든 것을 0으로 만들기 -> 1111을 한번 뒤집기👉 모든 것을 1로 만들기 -> 0을 1로 뒤집기 두번 튜터님의 코드( 혼자 구현 실패.. )Array, LinkedList , 순차탐색,
재귀함수 : 나를 계속해서 호출하는 함수👉 간결하고 효율적인 코드를 만들기 위해 사용!👉 함수안에서 함수를 호출하는 것... -> 근데 꼭!! 재귀함수를 쓸 때는 탈출 조건을 줘야함 꼭!!!0~60까지 count 하는 재귀함수 예제팩토리얼 예제 회문 예제2주차 숙제
선택 정렬👉 선택해서 정렬한다.선택 정렬 예시Stack 자료구조를 활용한 레이저 탑 예제👉 각 길이를 가진 탑이 배열 형태로 존재한다👉 ex) top_heights = 6, 9, 5, 7, 4👉 4라는 높이의 탑이 레이저를 왼쪽으로 쏜다면 7이라는 높이의 탑에
트리 / 힙 👉 1개 -> 2개 -> 4개 등 가지 치기 형태로 쭉 뻗어 나가는 자료구조DFS / BFS 👉 깊이우선 탐색 / 넓이 우선탐색 -> 트리 구조에서 자료 탐색하는 방법트리👉 뿌리와 가지로 구성되어 거꾸로 세워놓은 나무처럼 보이는 계층형,비선형 자료구조
Stack , Queue, ArrayDequeStack👉 LIFO ( Last In First Out ) 의 자료구조Stack 예제코드Queue👉 FIFO ( Fist In First Out ) 의 자료구조Queue 예제코드ArrayDeque👉 실무에서 많이 사용
프로세스👉 메모리에 적재되어 실행되고 있는 프로그램 인스턴스👉 운영체재로부터 시스템 자원을 할당받은 작업의 단위👉 프로세스는 독립된 메모리를 할당 받는다👉 프로세스가 메모리를 관리하기 위해 이 공간들을 어떤 구조로 관리하는데, 이를 프로세스 주소공간이라고 부른다
SOLID1) SRP : 단일 책임 원칙👉 한 클래스는 하나의 책임만 가져야한다.👉 하나의 책임은 클수도 있고, 작을 수도 있다.👉 하나의 책임의 기준은 변경이다.👉 변경이 발생하였을 때, 변경해야 될 부분이 적으면, 단일책임 원칙을 잘 따른 것이다.👉 클래스
[11.22] 내일배움캠프[Spring] TIL-16 1. Java세부 개념 잡기 > * 3-Tier Architecture > * Presentation Tier 👉 일반 사용자가 애플리케이션과 상호작용하는 애플리케이션의 사용자 인터페이스 및 통신계층 👉 주
아직은 DB를 사용하지 않기 때문에 Collection타입으로 클레스 객체를 받아 저장하는 방명록을 만들자!1) 회의 전 개인 구상👉 방명록의 속성 content, name, date .. 등을 정의한 Memo.class를 만들자👉 List< >타입으로 데이터
DB를 사용하지 않고 만들어보는 java 콘솔 프로그램 2번째 미니 프로젝트👉 은행 프로그램을 만들자.👉 은행은 계좌를 관리하며 추가, 수정, 삭제가 가능하다.👉 계좌의 입출금 내역 또한 필요하다.1) 회의 전 개인 구상👉 일단 DB가 진짜 있다고 생각하면,
Http, Https1) IP👉 인터넷에 연결되어 있는 모든 장치들(컴퓨터, 스마트폰...)을 식별할 수 있도록 각각 장비에 부여되는 고유주소👉 인터넷에 연결되어 있는 모든 장비는 IP주소를 갖는다.🚨 개인생각: 같은 인터넷을 사용하는 기기는 같은 IP주소를 갖게
원래 미완성이였던 입출금, 거래내역 조회 부분까지 얼추 마무리가 끝났다.코드를 전체적으로 돌려보며 예외를 확인하고 마지막 발표를 준비하고 있다.User.javaAccount.javaBank.javaApp.java1) Main의 코드가 너무 길다. -> 중복되는 부분을
지금까지 일주일간 자바의 전체적인 구조를 알고 Collection을 사용할 줄 아냐를 익히기 위해 미니 프로젝트를 진행했다.우리 팀원이 진행한 프로젝트는 은행관리였으며, 계좌의 등록, 수정, 삭제, 입/출금, 거래내역조회 , 이름/계좌번호로 계좌 정보 조회, 전체 계좌
[11.30] 내일배움캠프[Spring] TIL-22 1. Jvm 이해하기( Java Virtual Machine ) >* 개발자가 쓴코드.java -> 자바 컴파일러 -> 바이트 코드.class -> JVM > * JDK( Java Development Tool
[12.01] 내일배움캠프[Spring] TIL-23 1. Java Interface 다시 이해하기 > * Interface : 인터페이스를 사이로 앞, 뒤의 개발 코드가 서로 통신하는 접점. 앞, 뒤의 통신 규약 → 동시 개발 가능 >* 인터페이스 정리 > 1
1) 프로그램 실행 -> 가장 먼저 main() 함수 호출 되어 main() 함수의 스택 프레임이 스택에 저장2) func1() 함수를 호출하면 해당 함수의 매개변수, 반환 주소값, 지역 변수 등이 스택 프레임에 저장.3) func2() 함수를 호출하면 해당 함수의 스
Create TableDiagramAlter TableJoinConstraint( 제약 조건 )중간에 AUTO_INCREMENT 값이 1부터 시작하지 않아서 다시 속성 바꾸고 싶었을 떄 사용했던 것전반적인 구조 파악하기1) 요청이 들어온다.( URL , GET? POS
View( html, css ,js )로 눈으로 보여지는 웹 페이지는 작성할 필요없다.PostMan을 사용하여 요청에 대한 응답 값을 확인하자.git에 올려 놓자.1) 전체 게시글 목록 조회 API2) 게시글 작성 API3) 선택한 게시글 조회 API4) 선택한 게시글
[12.07] 내일배움캠프[Spring] TIL-27 1.Spring의 동작원리 개념 학습하기 영속성 컨텍스트? 기존 코드로만 Jpa작성했을 때 만약! 우리가 Jpa를 사용하지 않았다면?? 왜 EntityManager를 관리하는 하나의 EntityFactory는
Naver API : https://developers.naver.com/products/intro/plan/사용 라이브러리 : h2,spring web,Lombok,Thymleaf,JpaRestTemplate : Spring에서 지원하는 객체로 간편하게 R
저번 포스트에서 NaverAPI검색 호출을 다룬 것에 연장선!!title, image, link, lprice, myprice의 정보가 필요함.Entity와 DTO를 왜 분리하는지 여기서 이유를 다시 짐작할 수 있었다.ProductReqeustDto : 상품 정보들을
[12.12] 내일배움캠프[Spring] TIL-30 1. 로그인 / 회원가입 > * 지난 포스팅 : 네이버 검색 API를 활용하여 상품을 키워드로 검색하고, 최저가를 등록하는 작업까지 진행 >* 오늘은 각 회원별로 이용자/관리자를 나눠 회원가입을 진행 이용자 ->
지난 포스팅 : JWT 방식을 사용하여, 등록된 User의 인식 시, Secret Key로 복호화가 가능한 Token을 클라이언트에게 제공하여, 다음 작업의 요청 시 요청 데이터와, 토큰을 같이 Header에 전송하여 서버에서 검증단계를 거쳐 로그인의 상태에서 할 수
지난 포스팅 : JWT 방식의 토큰을 통해 인증 인가를 거친 후, 오름차순( AES ), 내림차순( DESC ),SortBy( 어떤걸 기준으로 정렬할 것인지 ),Page,size에 따라 관심 상품을 정렬할 수 있게 했다.오늘은 이렇게 정렬된 컨텐츠를 자신만의 폴더를 생
전체 게시글 목록 조회 API제목, 작성자명(username), 작성 내용, 작성 날짜를 조회하기작성 날짜 기준 내림차순으로 정렬하기게시글 작성 API토큰을 검사하여, 유효한 토큰일 경우에만 게시글 작성 가능제목, 작성자명(username), 작성 내용을 저장하고저장된
리더가 전략을 수립하면 조직원들은 전략 달성을 위해 맡겨진 업무를 리더의 통제하에 수행리더는 전략의 예측도를 높이기 위해 조사와 분석에 많은 시간을 할애조직원들은 계획대로 과업 일정을 준수하는 것이 성과→ 실행의 속도가 늦다.→ 중간에 계획을 변경하는 것이 쉽지 않다.
[12.19] 내일배움캠프[Spring] TIL-35 1. 기존의 Spring 숙련 과제 기능 추가하기 회원별 직급에 따른 분류(User, Admin) 회원 권한 부여하기 (ADMIN, USER) - ADMIN 회원은 모든 게시글, 댓글 수정 / 삭제 가능 > *
현재 직급에 따른 게시글의 수정과 삭제 작업 까지는 완료 했고, 댓글 작업을 진행중이다...나는 게시글 < -> 댓글의 관계를 댓글에서 BOARD_ID 만 들고 있어도 판별이 가능할 것이라고 생각해서Comment엔티티에 Board엔티티를 단방향으로 @ManyToO
현재 직급에 따른 권한 분류와 댓글의 작성까지 작업했었다.게시글 < -> 댓글 : 나는 댓글의 입장에서 게시글의 고유 BOARD_ID를 가진다면, 요구사항을 만족시킬 수 있기 때문에 양방향 관계설계를 하지 않았었다. 실제로 요구사항을 만족시키는데는 굳이 양방향 연
[12.23] 내일배움캠프[Spring] TIL-38 1. SpringSercurity > * Spring에서 필요한 인증 및 인가를 위해 많은 기능을 제공해주는 것 공식 문서 : https://docs.spring.io/spring-security/reference
저번시간 인증/인가를 제공하는 Spring Security에 대해 간단한 실습을 진행 중 이였다.비밀번호는 저장 시 꼭 암호화를 해야한다.암호화 : 평문 -> ( 암호화 알고리즘 ) -> 암호문복호화 : 암호문 -> ( 암호화 알고리즘 ) -> 평문암호화 : 평문 ->
[12.27] 내일배움캠프[Spring] TIL-40 1. Spring Security를 통한 로그인 구현 오늘 한 부분 > *
[12.28] 내일배움캠프[Spring] TIL-41 1.Spring Test 기본개념들 > * 단위 테스트 : 프로그램 작은 단위로 쪼개고, 쪼갠 부분 테스트하면서 뭐가 문제인지 찾아내는 것 TDD ( Test-Driven-Development ) : 설계 -> 개
ResponseHeader 에 응답 코드 담아서 보냄(403..500...200..)코드 따고 들어가보면 enum으로 다 정의되어 있음!! 엄청 편리..!여태까지 우리의 코드에서는 Client의 실수 ( ex.중복 이름, 중복된 어떤 작업실행) 했을 때, throw로
SA 프로젝트 소개 프로젝트 와이어 프레임 ERD 데이터베이스 설계 API 명세서 프로젝트 소개 스프링 시큐리티를 사용하는 프로젝트 로그인 기능 글 작성 / 수정 / 삭제 댓글 작성 / 수정 / 삭제 위의 기능들이 존재하는 페이지 만들기 그라운드 룰 개인이 맡
SA : https://www.notion.so/SA-9f3f419d64ef454ba0c666885ddfcf941) 현재 유저로그인 기능 -> 팀원 : 이재원님2) 게시글 작성 기능 -> 팀원 : 장현재님3) 게시글의 댓글 기능 -> 팀원 : 손혜은님4) 게시
[01.03] 내일배움캠프[Spring] TIL-45 1. Spring 중간 미니 프로젝트 > * SA : https://www.notion.so/SA-9f3f419d64ef454ba0c666885ddfcf94 오늘의 진행상황 > * 깃 허브에서 협업을 하는 과정에
[01.04] 내일배움캠프[Spring] TIL-46 1. Spring 중간 미니 프로젝트 2. 기존 했던 예제 보고 복습하기 @EnableScheduling > * 전에 했던 예제 중 네이버 API를 통해 상품을 검색하고 최저가를 갱신하는 예제가 있었다. 해당 상
박상훈, 김민수 : 마지막 코드 검토 및 깃 README작업장현재 : 시현 영상 작업이재원 : 발표손혜은 : 발표자료 준비Excepion을 만지던 중 발견한 사실이 있다.의도한 작업 Exception\-> 토큰을 가지고 있지 않은 상태에서 인증/인가가 필요한 요청을 했
https://github.com/PriceHoon/groupSix완성보다 하나라도 배우는 것이 목표인 2\*3 ==6 조!팀원 소개/역할우리의 약속09:00 : 간단히 진행사항과 당일 목표/계획 공유개인이 맡은 기능에 대해 충분한 고민과 검색 후 안 되면 팀
문제점 1) : Mac OS 의 보안 접근 통제App Store 및 확인된 개발자로 바꾸고 해결문제점 2) : 알 수 없는 이유로 계속 실행이 되지 않음.\-> 8.0.30 Version -> 8.0.22 Version DownGrade 해결.이제 부턴 코드는 깃 허브
GItHubCodingTest : https://github.com/PriceHoon/codingTestJava
원래는 엔티티별로 연관관계를 설정해줬었는데, 연관관계를 끊어주고 ID의 속성만 들고 있게하여 CASCADE속성을 쓰지 못하게 됐다.그래서 UserId를 바탕으로 해당 유저가 쓴 게시글, 댓글을 지워주는 방향으로 코드를 작성했다.UserService라는 비즈니스 로직에
GitHubCodingTest : https://github.com/PriceHoon/codingTestJava감기 이슈로 많은 공부를 진행하지 못함... 몸 관리도 능력이다..하..
DB 중에서 검색쿼리가 가장 주로 사용되는 부분에서 최대한 중복되지 않는 값을 기준으로 index를 만들게 된다.https://github.com/PriceHoon/codingTestJava지난 코드 리펙토링 : https://github.com/Pr
[01.16] 내일배움캠프[Spring] TIL-54 SA 프로젝트 소개 그라운드 룰 ERD 데이터베이스 설계 API 명세서 프로젝트 소개 고객 - 판매자 매칭 서비스 소비자와 판매자를 이어주는 서비스 그라운드 룰 10am / 5pm 회의 10
내가 맡은 기능: CutomerService,SellerService 에 따른 Repository,Controller원래 알았던 Page처리는 오름차순 정렬이나 어떠한 title을 주제로 orderBy할 것인지에 대한 개념 부족 때문에 시도를 못하고 있던 중, page
금일 Spring Security 를 적용해서 기본 기능을 구현했다.기본 기능1) 유저 회원가입 -> 역할 분배 ( Customer.Seller,Admin )2) 역할에 따른 작업 -> Seller등록, 등록에 따른 물품판매 등록 등..Spring Security 의
[01.20] 내일배움캠프[Spring] TIL-57 1. Spring Project 검색기능과 페이징 기능의 콜라보 > * 유저의 리스트, 판매상품리스트, 판매자의 리스트 등 페이징 처리가 들어간 곳에 검색기능을 넣어보았다. Containing의 발견 > * 보
새로운 것에 대해 흥미를 가지고 시도를 한 것 - 웹 소켓 채팅 구현 시도자동 문서화 API - 스웨거 , Spring Rest Docs커밋 규칙을 사용하여 깔끔한 커밋 메시지 유지소통을 하며 프로젝트의 빠른 기능 구현기능 구현 시도를 하였지만 계속 잡고 있다가 시간
TDD -> Test Code먼저 작성하고 실제 로직을 작성하는 방식으로 아직 찬반 여부 갈림.회원가입 : 성공 케이스는 어찌저찌 잘 작성했는데, 실패 케이스를 작성할 때asserThatThrowBy로 IllegalArgumentException()과 그 메세지를 비교
사전 상식 : API요청을 Test하기 위해서 MockMvc객체의 선언 및 초기화가 필요하다.사전 작업 : @DataJpaTest의 class 과 해당 Repository의 @Autowired가 필요하다.Test결과 진짜 쿼리문이 날아가는 것을 보니, 진짜 DB로 테스
CI (Continuous Integration)해석하면 "지속적 통합" 으로 여러 개발자가 하나의 프로젝트를 같이 개발할 때 발생하는 불일치를 최소화 해주는 개념입니다.CI 를 제대로 구현하면 애플리케이션 변경 사항 반영 시 자동으로 빌드 및 테스트 되어 잘못된 코드
[01.31] 내일배움캠프[Spring] TIL-62 1. JPA가 되기 까지.. JDBC > * java앱과 DB를 연결하기 위한 기술 > * JDBC Driver는 여러타입의 DB와 연결할 수 있는 기능을 제공한다. JDBC RunTime > * Connecti
일대일 관계를 나타내는 매핑 정보1:1 관계를 지정하기에 앞서 이것이 꼭 물리적으로 테이블이 분리되어야 하는지에 대해 생각해 봐야 한다.1:1 관계로 구성 한다는 것은 결국 하나의 목적에 부합되는 공통된 데이타를 관리한다고 볼 수 있으며 이것은 하나의 테이블에서 관리
@Repository : MarkerInterface로 특별한 기능은 없음.Repository ~ JpaRepository 까지는 @NotRepositoryBean 이 붙어있는 인터페이스이다.JpaRepository<Entity,ID> 붙이면 알맞은 프로그래밍 된
프로젝트 주제 : 가볍고 학원다니기엔 뭐한 것을 배울 수 있는 튜터 매칭 시스템!이신희 28 ⭐LEADER⭐정성윤 31 👑VICE LEADER👑 ← 무게를 견디십쇼박상훈 27이은섭 27임동규 29매일 프로젝트 진행 일지를 기록한다.기록 일지 작성은 매일 팀원이 돌아
[02.07] 내일배움캠프[Spring] TIL-66
[02.08] 내일배움캠프[Spring] TIL-67 1. Spring Final Project > * 오늘 진행상황 1) 어제 작성한 UML, ERD, 와이어프레임 워크를 가지고 튜터님과 긴 상의를 걸친 결과 정확이 이프로젝의 목적성과 방향성에 큰 혼돈이 왔고,
Team Notion : https://www.notion.so/d240cccf193f488bb7843c3ebe3ca932?v=d4493d0b5dba4643b0ae30b5a6701499GitHub : https://github.com/20230206새
[02.12] 내일배움캠프[Spring] TIL-69 1. Spring final Project > * Team Notion : https://www.notion.so/4-8a96e7a3ca6f44e98e78e70ac4bb1fda Team GitHub : https
오늘 진행한 작업 : 요청한 강좌의 완료 여부를 판단해서, 완료되었을 경우 리뷰를 남길 수 있는 작업 수행피드백 : 저번에도 나왔지만, Product라는 엔티티의 ProduectService는 ProductRepository를 의존하게 하자\-> 다른 리파지토리를 접근
오늘 진행한 일1) 맡았던 CRUD의 PR을 바탕으로 코드리뷰 및 수정 진행2) 카카오 API를 사용해서 주소를 검색하고, 검색에 대한 선택을 바탕으로 x,y,address값을 DB에 저장Page의 요소들을 Param형태로 전달받게 되는데, 그 때 하나씩 지정하지 않고
Spring Final Project > * 당근 마켓의 시스템과 유사한 메커니즘으로 튜터링 매칭 시스템을 구현중. > * Team Notino : https://www.notion.so/d240cccf193f488bb7843c3ebe3ca932?v=d4493d0b5d